草庐IT

android - 返回 Activity 时出现 NullPointerException

全部标签

ruby - 为什么 truth && "string"返回 "string"

假设我有一个类似的东西true&&true#=>true这是有道理的,所以我尝试这样的事情:true&&"dsfdsf"#=>"dsfdsf"这让我很惊讶,因为很多时候我会做类似ifsomething&&something的事情,我一直认为那是评估为true并且会返回true。进一步的实验做这样的事情:jruby-1.7.3:009>"ad"&&"dsf"=>"dsf"jruby-1.7.3:010>"ad"&&"sdfd"&&nil=>niljruby-1.7.3:011>"ad"&&nil&&"sdf"=>nil使Ruby看起来要么返回最后一个值(如果全部为true),要么返回它找

ruby - 为什么这两个不同的正则表达式根据下划线的位置在 Ruby 中返回不同的结果

我有以下内容:.[11]pry(main)>"abBN123-4.56".scan(/BN([0-9_\.-]+)/)=>[["123-4.56"]][12]pry(main)>"abBN123-4.56".scan(/BN([0-9\.-_]+)/)=>[["123"]]我不确定为什么第二个末尾带有下划线的行为与第一个行为不同。RegEx解析器如何解释它以使其不同? 最佳答案 这是因为您将连字符(-)放在了字符类的中间而没有被转义。在字符类[]中,您可以放置​​一个连字符(-)作为first或last性格。如果您将连字符放在其他任

ruby-on-rails - 在 El Capitan 上安装 Rails 时出现 -lgmp 错误的库未找到(Mac OS 10.11.1 (15B42))

在使用Rubyv2.2.2的ElCapitan(MacOSX10.11.1)上安装Rails时,出现以下错误:ERROR:Errorinstallingnokogiri:ERROR:Failedtobuildgemnativeextension./Users/jon/.rvm/rubies/ruby-2.2.2/bin/ruby-r./siteconf20151117-26799-ux15fd.rbextconf.rb--use-system-librariescheckingiftheCcompileraccepts...***extconf.rbfailed***Couldnotc

arrays - 给定一个大小为 y 的数组,其中包含大小为 n 的数组,我如何使用 Ruby 返回所有逻辑组合?

我想做的是处理n个集合,而我在下面提供的代码正好处理4个集合。defshow_combinations@combos=[]['A','noA'].eachdo|a|['B','noB'].eachdo|b|['C','noC'].eachdo|c|['D','noD'].eachdo|d|@combos我如何重构以下代码来处理以下场景:鉴于我有一个大小为y的数组,其中包含大小为n的数组,我想返回所有组合。请务必注意,每个子数组中只能有一个项目出现在结果中。(如“已完成资料”不能同时出现在“未完成资料”的结果中)背景:用户可能有一些任务:例如,“完成配置文件”或“设置电子邮件”或其他任何

ruby-on-rails - 带有 Memcache 的 Rails 返回错误的缓存对象?

我有一个相当大的Rails应用程序,它在单独的服务器上使用memcached作为其缓存存储。问题是我在生产环境中随机出现错误,似乎表明memcached正在返回不正确的对象。例子:在这个例子中,current_site是一个辅助方法,它访问Site模型上的一个方法,该模型使用Rails.cache来缓存模型ActionView::TemplateErrorinListingsController#editundefinedmethod`settings'for#Online#12ofapp/views/layouts/site.html.erb9:10:11:12:13:"/>14:1

ruby - 如何从 eval 内部返回?

我有一个代码需要在eval中使用。有时我需要退出评估代码,但我的尝试会导致错误。例如:#expectedtosee1,2and5;not3nor4;andnoerrorseval"puts1;puts2;return;puts3;puts4"#=>Error:unexpectedreturnputs5我尝试了return、end、exit、break,但都没有成功。exit不会引发错误,但我没有得到5。(注意:我知道eval是邪恶的,但在这种情况下我需要使用它。) 最佳答案 谢谢大家,但我找到了最适合我的问题的解决方案:lambda

Ruby,将字符串与 UTF-8 字符进行比较时出现问题

我有这2个UTF-8字符串:a="N\u01b0\u0303"b="N\u1eef"它们看起来很不一样,但渲染后是一样的:irb(main):039:0>puts"#{a}-#{b}"Nữ-Nữa版本是我存储在数据库中的版本。b版本是来自浏览器的POST请求,我不知道为什么浏览器会发送不同的UTF8字符组合,而且这种情况并不总是发生,我不能'在我的开发环境中重现该问题,它发生在生产环境中并且占总请求的百分比。情况是我尝试比较它们,但它们返回false:irb(main):035:0>a==b=>false我尝试过不同的方法,例如强制编码:irb(main):022:0>c.force

ruby - "HTTPI tried to user the httpi adapter"使用 Savon SOAP 库时出错

我正在使用Savon为SOAP服务编写一个Ruby接口(interface)。它似乎正在工作,但我在命令行上出现了几条DEBUG消息D,[2011-02-15T16:33:32.664620#4140]DEBUG--:HTTPI尝试使用httpclient适配器,但无法在LOAD_PATH中找到库。后退现在使用net_http适配器。D,[2011-02-15T16:33:32.820863#4140]DEBUG--:HTTPI使用net_http适配器执行HTTPPOST我不确定为什么会出现这些消息,或者它们的含义。有什么想法吗? 最佳答案

ruby-on-rails - 如果评估的最后一个语句是 If 语句,Ruby 会返回什么

我的理解是ruby​​返回函数中评估的最后一条语句。如果函数以if语句结束,结果为falsedefthing(input)item=input=="hi"ifitem[]endendputsthing("hi").class#>Arrayputsthing("nothi").class#>NilClass我喜欢这个功能(如果语句为false,则返回nil),但为什么不返回false(从赋值给item)? 最佳答案 如果您的if语句没有运行任何代码,则返回nil,否则返回已运行代码的值。Irb是试验这些东西的好工具。irb(main)

ruby-on-rails - Rails 以 JSON 格式返回所有 404 和 500 错误

我是Rails的新手,正在使用Rails4。在我的应用程序中,我想返回所有JSON格式的404和500错误{"status":404,"message":"notfound"}有一个简单的方法可以做到这一点吗?因为我只是找到了使用rails3.x执行此操作的解决方案。谢谢我正在尝试执行此解决方案NeedtoreturnJSON-formatted404errorinRails但我在故障安全响应期间收到错误:未初始化的常量ErrorsController 最佳答案 也许您正在寻找这个:render:json=>@error_objec